<?
/*
-------------------------------
Script - EvaGb
-------------------------------
File - banpost.php
-------------------------------
Function - Модуль админцентра, банит пользователя по IP
-------------------------------
*/
class admin_modul {
   public  $error,$result;
   private $db,$adm,$id,$tpl;
   function __construct() {
        $this->db=locator::get()->db();
        $this->tpl=locator::get()->tpl();
        $this->adm=locator::get()->save['admin'];
        $this->id=filter($_GET['id'],'0-9');
        $_SESSION['ban_refer']=!$_SESSION['ban_refer']?$_SESSION['page_refer']:$_SESSION['ban_refer'];
        if ($this->id){
            $sql=$this->db->query("SELECT * FROM {$this->db->pref}_post WHERE id_post='{$this->id}'");
            if (mysql_num_rows($sql)) {
               if (!$this->userrequest()){
                    $this->result=$this->tpl();
               }
            }else {
               $this->error="Ошибка: Ничего не найдено";
            }
        }else {
           $this->error="Ошибка: Ничего не найдено";
        }
   }
   private function userrequest() {
     if (isset($_POST['time'])) {
       if (!empty($_POST['time'])) {
           if (!preg_match("#[^0-9]+#i",$_POST['time'])) {
               $this->update();
               return true;
           }
        }else {
          $this->error="Ошибка: Обязательные поля нужно заплнить";
        }
     }
       return false;
   }
   private function update() {
       $time=time()+(3600*24)*$_POST['time'];
       $s=$this->adm->ban($this->id,$time);
       $this->error=$this->adm->error;
       if ($s) {
           header("Refresh:2;url={$_SESSION['ban_refer']}");
       }
       $_SESSION['ban_refer']=false;
   }
   private function tpl() {
       return $this->tpl->load("admin_tpl/ban.tpl");
   }
}
?>
